/* 
 * flowplayer.js 3.2.2. The Flowplayer API
 * 
 * Copyright 2010 Flowplayer Oy
 * 
 * This file is part of Flowplayer.
 * 
 * Flowplayer is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 * 
 * Flowplayer is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 * 
 * You should have received a copy of the GNU General Public License
 * along with Flowplayer.  If not, see <http://www.gnu.org/licenses/>.
 * 
 * Date: 2010-05-20 17:15:38 +0000 (Thu, 20 May 2010)
 * Revision: 480 
 */
(function() {
	function g(o) {
		console.log("$f.fireEvent", [].slice.call(o))
	}
	function k(q) {
		if (!q || typeof q != "object") {
			return q
		}
		var o = new q.constructor();
		for ( var p in q) {
			if (q.hasOwnProperty(p)) {
				o[p] = k(q[p])
			}
		}
		return o
	}
	function m(t, q) {
		if (!t) {
			return
		}
		var o, p = 0, r = t.length;
		if (r === undefined) {
			for (o in t) {
				if (q.call(t[o], o, t[o]) === false) {
					break
				}
			}
		} else {
			for ( var s = t[0]; p < r && q.call(s, p, s) !== false; s = t[++p]) {
			}
		}
		return t
	}
	function c(o) {
		return document.getElementById(o)
	}
	function i(q, p, o) {
		if (typeof p != "object") {
			return q
		}
		if (q && p) {
			m(p, function(r, s) {
				if (!o || typeof s != "function") {
					q[r] = s
				}
			})
		}
		return q
	}
	function n(s) {
		var q = s.indexOf(".");
		if (q != -1) {
			var p = s.slice(0, q) || "*";
			var o = s.slice(q + 1, s.length);
			var r = [];
			m(document.getElementsByTagName(p), function() {
				if (this.className && this.className.indexOf(o) != -1) {
					r.push(this)
				}
			});
			return r
		}
	}
	function f(o) {
		o = o || window.event;
		if (o.preventDefault) {
			o.stopPropagation();
			o.preventDefault()
		} else {
			o.returnValue = false;
			o.cancelBubble = true
		}
		return false
	}
	function j(q, o, p) {
		q[o] = q[o] || [];
		q[o].push(p)
	}
	function e() {
		return "_" + ("" + Math.random()).slice(2, 10)
	}
	var h = function(t, r, s) {
		var q = this, p = {}, u = {};
		q.index = r;
		if (typeof t == "string") {
			t = {
				url : t
			}
		}
		i(this, t, true);
		m(
				("Begin*,Start,Pause*,Resume*,Seek*,Stop*,Finish*,LastSecond,Update,BufferFull,BufferEmpty,BufferStop")
						.split(","), function() {
					var v = "on" + this;
					if (v.indexOf("*") != -1) {
						v = v.slice(0, v.length - 1);
						var w = "onBefore" + v.slice(2);
						q[w] = function(x) {
							j(u, w, x);
							return q
						}
					}
					q[v] = function(x) {
						j(u, v, x);
						return q
					};
					if (r == -1) {
						if (q[w]) {
							s[w] = q[w]
						}
						if (q[v]) {
							s[v] = q[v]
						}
					}
				});
		i(this, {
			onCuepoint : function(x, w) {
				if (arguments.length == 1) {
					p.embedded = [ null, x ];
					return q
				}
				if (typeof x == "number") {
					x = [ x ]
				}
				var v = e();
				p[v] = [ x, w ];
				if (s.isLoaded()) {
					s._api().fp_addCuepoints(x, r, v)
				}
				return q
			},
			update : function(w) {
				i(q, w);
				if (s.isLoaded()) {
					s._api().fp_updateClip(w, r)
				}
				var v = s.getConfig();
				var x = (r == -1) ? v.clip : v.playlist[r];
				i(x, w, true)
			},
			_fireEvent : function(v, y, w, A) {
				if (v == "onLoad") {
					m(p, function(B, C) {
						if (C[0]) {
							s._api().fp_addCuepoints(C[0], r, B)
						}
					});
					return false
				}
				A = A || q;
				if (v == "onCuepoint") {
					var z = p[y];
					if (z) {
						return z[1].call(s, A, w)
					}
				}
				if (y
						&& "onBeforeBegin,onMetaData,onStart,onUpdate,onResume"
								.indexOf(v) != -1) {
					i(A, y);
					if (y.metaData) {
						if (!A.duration) {
							A.duration = y.metaData.duration
						} else {
							A.fullDuration = y.metaData.duration
						}
					}
				}
				var x = true;
				m(u[v], function() {
					x = this.call(s, A, y, w)
				});
				return x
			}
		});
		if (t.onCuepoint) {
			var o = t.onCuepoint;
			q.onCuepoint.apply(q, typeof o == "function" ? [ o ] : o);
			delete t.onCuepoint
		}
		m(t, function(v, w) {
			if (typeof w == "function") {
				j(u, v, w);
				delete t[v]
			}
		});
		if (r == -1) {
			s.onCuepoint = this.onCuepoint
		}
	};
	var l = function(p, r, q, t) {
		var o = this, s = {}, u = false;
		if (t) {
			i(s, t)
		}
		m(r, function(v, w) {
			if (typeof w == "function") {
				s[v] = w;
				delete r[v]
			}
		});
		i(this, {
			animate : function(y, z, x) {
				if (!y) {
					return o
				}
				if (typeof z == "function") {
					x = z;
					z = 500
				}
				if (typeof y == "string") {
					var w = y;
					y = {};
					y[w] = z;
					z = 500
				}
				if (x) {
					var v = e();
					s[v] = x
				}
				if (z === undefined) {
					z = 500
				}
				r = q._api().fp_animate(p, y, z, v);
				return o
			},
			css : function(w, x) {
				if (x !== undefined) {
					var v = {};
					v[w] = x;
					w = v
				}
				r = q._api().fp_css(p, w);
				i(o, r);
				return o
			},
			show : function() {
				this.display = "block";
				q._api().fp_showPlugin(p);
				return o
			},
			hide : function() {
				this.display = "none";
				q._api().fp_hidePlugin(p);
				return o
			},
			toggle : function() {
				this.display = q._api().fp_togglePlugin(p);
				return o
			},
			fadeTo : function(y, x, w) {
				if (typeof x == "function") {
					w = x;
					x = 500
				}
				if (w) {
					var v = e();
					s[v] = w
				}
				this.display = q._api().fp_fadeTo(p, y, x, v);
				this.opacity = y;
				return o
			},
			fadeIn : function(w, v) {
				return o.fadeTo(1, w, v)
			},
			fadeOut : function(w, v) {
				return o.fadeTo(0, w, v)
			},
			getName : function() {
				return p
			},
			getPlayer : function() {
				return q
			},
			_fireEvent : function(w, v, x) {
				if (w == "onUpdate") {
					var z = q._api().fp_getPlugin(p);
					if (!z) {
						return
					}
					i(o, z);
					delete o.methods;
					if (!u) {
						m(z.methods, function() {
							var B = "" + this;
							o[B] = function() {
								var C = [].slice.call(arguments);
								var D = q._api().fp_invoke(p, B, C);
								return D === "undefined" || D === undefined ? o
										: D
							}
						});
						u = true
					}
				}
				var A = s[w];
				if (A) {
					var y = A.apply(o, v);
					if (w.slice(0, 1) == "_") {
						delete s[w]
					}
					return y
				}
				return o
			}
		})
	};
	function b(q, G, t) {
		var w = this, v = null, D = false, u, s, F = [], y = {}, x = {}, E, r, p, C, o, A;
		i(w,
				{
					id : function() {
						return E
					},
					isLoaded : function() {
						return (v !== null && v.fp_play != undefined && !D)
					},
					getParent : function() {
						return q
					},
					hide : function(H) {
						if (H) {
							q.style.height = "0px"
						}
						if (w.isLoaded()) {
							v.style.height = "0px"
						}
						return w
					},
					show : function() {
						q.style.height = A + "px";
						if (w.isLoaded()) {
							v.style.height = o + "px"
						}
						return w
					},
					isHidden : function() {
						return w.isLoaded()
								&& parseInt(v.style.height, 10) === 0
					},
					load : function(J) {
						if (!w.isLoaded()
								&& w._fireEvent("onBeforeLoad") !== false) {
							var H = function() {
								u = q.innerHTML;
								if (u && !flashembed.isSupported(G.version)) {
									q.innerHTML = ""
								}
								flashembed(q, G, {
									config : t
								});
								if (J) {
									J.cached = true;
									j(x, "onLoad", J)
								}
							};
							var I = 0;
							m(a, function() {
								this.unload(function(K) {
									if (++I == a.length) {
										H()
									}
								})
							})
						}
						return w
					},
					unload : function(J) {
						if (this.isFullscreen()
								&& /WebKit/i.test(navigator.userAgent)) {
							if (J) {
								J(false)
							}
							return w
						}
						if (u.replace(/\s/g, "") !== "") {
							if (w._fireEvent("onBeforeUnload") === false) {
								if (J) {
									J(false)
								}
								return w
							}
							D = true;
							try {
								if (v) {
									v.fp_close();
									w._fireEvent("onUnload")
								}
							} catch (H) {
							}
							var I = function() {
								v = null;
								q.innerHTML = u;
								D = false;
								if (J) {
									J(true)
								}
							};
							setTimeout(I, 50)
						} else {
							if (J) {
								J(false)
							}
						}
						return w
					},
					getClip : function(H) {
						if (H === undefined) {
							H = C
						}
						return F[H]
					},
					getCommonClip : function() {
						return s
					},
					getPlaylist : function() {
						return F
					},
					getPlugin : function(H) {
						var J = y[H];
						if (!J && w.isLoaded()) {
							var I = w._api().fp_getPlugin(H);
							if (I) {
								J = new l(H, I, w);
								y[H] = J
							}
						}
						return J
					},
					getScreen : function() {
						return w.getPlugin("screen")
					},
					getControls : function() {
						return w.getPlugin("controls")._fireEvent("onUpdate")
					},
					getLogo : function() {
						try {
							return w.getPlugin("logo")._fireEvent("onUpdate")
						} catch (H) {
						}
					},
					getPlay : function() {
						return w.getPlugin("play")._fireEvent("onUpdate")
					},
					getConfig : function(H) {
						return H ? k(t) : t
					},
					getFlashParams : function() {
						return G
					},
					loadPlugin : function(K, J, M, L) {
						if (typeof M == "function") {
							L = M;
							M = {}
						}
						var I = L ? e() : "_";
						w._api().fp_loadPlugin(K, J, M, I);
						var H = {};
						H[I] = L;
						var N = new l(K, null, w, H);
						y[K] = N;
						return N
					},
					getState : function() {
						return w.isLoaded() ? v.fp_getState() : -1
					},
					play : function(I, H) {
						var J = function() {
							if (I !== undefined) {
								w._api().fp_play(I, H)
							} else {
								w._api().fp_play()
							}
						};
						if (w.isLoaded()) {
							J()
						} else {
							if (D) {
								setTimeout(function() {
									w.play(I, H)
								}, 50)
							} else {
								w.load(function() {
									J()
								})
							}
						}
						return w
					},
					getVersion : function() {
						var I = "flowplayer.js 3.2.0";
						if (w.isLoaded()) {
							var H = v.fp_getVersion();
							H.push(I);
							return H
						}
						return I
					},
					_api : function() {
						if (!w.isLoaded()) {
							throw "Flowplayer " + w.id()
									+ " not loaded when calling an API method"
						}
						return v
					},
					setClip : function(H) {
						w.setPlaylist( [ H ]);
						return w
					},
					getIndex : function() {
						return p
					}
				});
		m(
				("Click*,Load*,Unload*,Keypress*,Volume*,Mute*,Unmute*,PlaylistReplace,ClipAdd,Fullscreen*,FullscreenExit,Error,MouseOver,MouseOut")
						.split(","), function() {
					var H = "on" + this;
					if (H.indexOf("*") != -1) {
						H = H.slice(0, H.length - 1);
						var I = "onBefore" + H.slice(2);
						w[I] = function(J) {
							j(x, I, J);
							return w
						}
					}
					w[H] = function(J) {
						j(x, H, J);
						return w
					}
				});
		m(
				("pause,resume,mute,unmute,stop,toggle,seek,getStatus,getVolume,setVolume,getTime,isPaused,isPlaying,startBuffering,stopBuffering,isFullscreen,toggleFullscreen,reset,close,setPlaylist,addClip,playFeed,setKeyboardShortcutsEnabled,isKeyboardShortcutsEnabled")
						.split(","), function() {
					var H = this;
					w[H] = function(J, I) {
						if (!w.isLoaded()) {
							return w
						}
						var K = null;
						if (J !== undefined && I !== undefined) {
							K = v["fp_" + H](J, I)
						} else {
							K = (J === undefined) ? v["fp_" + H]() : v["fp_"
									+ H](J)
						}
						return K === "undefined" || K === undefined ? w : K
					}
				});
		w._fireEvent = function(Q) {
			if (typeof Q == "string") {
				Q = [ Q ]
			}
			var R = Q[0], O = Q[1], M = Q[2], L = Q[3], K = 0;
			if (t.debug) {
				g(Q)
			}
			if (!w.isLoaded() && R == "onLoad" && O == "player") {
				v = v || c(r);
				o = v.clientHeight;
				m(F, function() {
					this._fireEvent("onLoad")
				});
				m(y, function(S, T) {
					T._fireEvent("onUpdate")
				});
				s._fireEvent("onLoad")
			}
			if (R == "onLoad" && O != "player") {
				return
			}
			if (R == "onError") {
				if (typeof O == "string"
						|| (typeof O == "number" && typeof M == "number")) {
					O = M;
					M = L
				}
			}
			if (R == "onContextMenu") {
				m(t.contextMenu[O], function(S, T) {
					T.call(w)
				});
				return
			}
			if (R == "onPluginEvent" || R == "onBeforePluginEvent") {
				var H = O.name || O;
				var I = y[H];
				if (I) {
					I._fireEvent("onUpdate", O);
					return I._fireEvent(M, Q.slice(3))
				}
				return
			}
			if (R == "onPlaylistReplace") {
				F = [];
				var N = 0;
				m(O, function() {
					F.push(new h(this, N++, w))
				})
			}
			if (R == "onClipAdd") {
				if (O.isInStream) {
					return
				}
				O = new h(O, M, w);
				F.splice(M, 0, O);
				for (K = M + 1; K < F.length; K++) {
					F[K].index++
				}
			}
			var P = true;
			if (typeof O == "number" && O < F.length) {
				C = O;
				var J = F[O];
				if (J) {
					P = J._fireEvent(R, M, L)
				}
				if (!J || P !== false) {
					P = s._fireEvent(R, M, L, J)
				}
			}
			m(x[R], function() {
				P = this.call(w, O, M);
				if (this.cached) {
					x[R].splice(K, 1)
				}
				if (P === false) {
					return false
				}
				K++
			});
			return P
		};
		function B() {
			if ($f(q)) {
				$f(q).getParent().innerHTML = "";
				p = $f(q).getIndex();
				a[p] = w
			} else {
				a.push(w);
				p = a.length - 1
			}
			A = parseInt(q.style.height, 10) || q.clientHeight;
			E = q.id || "fp" + e();
			r = G.id || E + "_api";
			G.id = r;
			t.playerId = E;
			if (typeof t == "string") {
				t = {
					clip : {
						url : t
					}
				}
			}
			if (typeof t.clip == "string") {
				t.clip = {
					url : t.clip
				}
			}
			t.clip = t.clip || {};
			if (q.getAttribute("href", 2) && !t.clip.url) {
				t.clip.url = q.getAttribute("href", 2)
			}
			s = new h(t.clip, -1, w);
			t.playlist = t.playlist || [ t.clip ];
			var H = 0;
			m(t.playlist, function() {
				var J = this;
				if (typeof J == "object" && J.length) {
					J = {
						url : "" + J
					}
				}
				m(t.clip, function(K, L) {
					if (L !== undefined && J[K] === undefined
							&& typeof L != "function") {
						J[K] = L
					}
				});
				t.playlist[H] = J;
				J = new h(J, H, w);
				F.push(J);
				H++
			});
			m(t, function(J, K) {
				if (typeof K == "function") {
					if (s[J]) {
						s[J](K)
					} else {
						j(x, J, K)
					}
					delete t[J]
				}
			});
			m(t.plugins, function(J, K) {
				if (K) {
					y[J] = new l(J, K, w)
				}
			});
			if (!t.plugins || t.plugins.controls === undefined) {
				y.controls = new l("controls", null, w)
			}
			y.canvas = new l("canvas", null, w);
			function I(J) {
				if (!w.isLoaded() && w._fireEvent("onBeforeClick") !== false) {
					w.load()
				}
				return f(J)
			}
			u = q.innerHTML;
			if (u.replace(/\s/g, "") !== "") {
				if (q.addEventListener) {
					q.addEventListener("click", I, false)
				} else {
					if (q.attachEvent) {
						q.attachEvent("onclick", I)
					}
				}
			} else {
				if (q.addEventListener) {
					q.addEventListener("click", f, false)
				}
				w.load()
			}
		}
		if (typeof q == "string") {
			var z = c(q);
			if (!z) {
				throw "Flowplayer cannot access element: " + q
			} else {
				q = z;
				B()
			}
		} else {
			B()
		}
	}
	var a = [];
	function d(o) {
		this.length = o.length;
		this.each = function(p) {
			m(o, p)
		};
		this.size = function() {
			return o.length
		}
	}
	window.flowplayer = window.$f = function() {
		var p = null;
		var o = arguments[0];
		if (!arguments.length) {
			m(a, function() {
				if (this.isLoaded()) {
					p = this;
					return false
				}
			});
			return p || a[0]
		}
		if (arguments.length == 1) {
			if (typeof o == "number") {
				return a[o]
			} else {
				if (o == "*") {
					return new d(a)
				}
				m(a, function() {
					if (this.id() == o.id || this.id() == o
							|| this.getParent() == o) {
						p = this;
						return false
					}
				});
				return p
			}
		}
		if (arguments.length > 1) {
			var t = arguments[1], q = (arguments.length == 3) ? arguments[2]
					: {};
			if (typeof t == "string") {
				t = {
					src : t
				}
			}
			t = i(
					{
						bgcolor : "#000000",
						version : [ 9, 0 ],
						expressInstall : "http://static.flowplayer.org/swf/expressinstall.swf",
						cachebusting : true
					}, t);
			if (typeof o == "string") {
				if (o.indexOf(".") != -1) {
					var s = [];
					m(n(o), function() {
						s.push(new b(this, k(t), k(q)))
					});
					return new d(s)
				} else {
					var r = c(o);
					return new b(r !== null ? r : o, t, q)
				}
			} else {
				if (o) {
					return new b(o, t, q)
				}
			}
		}
		return null
	};
	i(window.$f, {
		fireEvent : function() {
			var o = [].slice.call(arguments);
			var q = $f(o[0]);
			return q ? q._fireEvent(o.slice(1)) : null
		},
		addPlugin : function(o, p) {
			b.prototype[o] = p;
			return $f
		},
		each : m,
		extend : i
	});
	if (typeof jQuery == "function") {
		jQuery.fn.flowplayer = function(q, p) {
			if (!arguments.length || typeof arguments[0] == "number") {
				var o = [];
				this.each(function() {
					var r = $f(this);
					if (r) {
						o.push(r)
					}
				});
				return arguments.length ? o[arguments[0]] : new d(o)
			}
			return this.each(function() {
				$f(this, k(q), p ? k(p) : {})
			})
		}
	}
})();
(function() {
	var h = document.all, j = "http://www.adobe.com/go/getflashplayer", c = typeof jQuery == "function", e = /(\d+)[^\d]+(\d+)[^\d]*(\d*)/, b = {
		width : "100%",
		height : "100%",
		id : "_" + ("" + Math.random()).slice(9),
		allowfullscreen : true,
		allowscriptaccess : "always",
		quality : "high",
		version : [ 3, 0 ],
		onFail : null,
		expressInstall : null,
		w3c : false,
		cachebusting : false
	};
	if (window.attachEvent) {
		window.attachEvent("onbeforeunload", function() {
			__flash_unloadHandler = function() {
			};
			__flash_savedUnloadHandler = function() {
			}
		})
	}
	function i(l, f) {
		if (f) {
			for (key in f) {
				if (f.hasOwnProperty(key)) {
					l[key] = f[key]
				}
			}
		}
		return l
	}
	function a(f, n) {
		var m = [];
		for ( var l in f) {
			if (f.hasOwnProperty(l)) {
				m[l] = n(f[l])
			}
		}
		return m
	}
	window.flashembed = function(f, m, l) {
		if (typeof f == "string") {
			f = document.getElementById(f.replace("#", ""))
		}
		if (!f) {
			return
		}
		if (typeof m == "string") {
			m = {
				src : m
			}
		}
		return new d(f, i(i( {}, b), m), l)
	};
	var g = i(
			window.flashembed,
			{
				conf : b,
				getVersion : function() {
					var f;
					try {
						f = navigator.plugins["Shockwave Flash"].description
								.slice(16)
					} catch (n) {
						try {
							var l = new ActiveXObject(
									"ShockwaveFlash.ShockwaveFlash.7");
							f = l && l.GetVariable("$version")
						} catch (m) {
						}
					}
					f = e.exec(f);
					return f ? [ f[1], f[3] ] : [ 0, 0 ]
				},
				asString : function(l) {
					if (l === null || l === undefined) {
						return null
					}
					var f = typeof l;
					if (f == "object" && l.push) {
						f = "array"
					}
					switch (f) {
					case "string":
						l = l.replace(new RegExp('(["\\\\])', "g"), "\\$1");
						l = l.replace(/^\s?(\d+\.?\d+)%/, "$1pct");
						return '"' + l + '"';
					case "array":
						return "[" + a(l, function(o) {
							return g.asString(o)
						}).join(",") + "]";
					case "function":
						return '"function()"';
					case "object":
						var m = [];
						for ( var n in l) {
							if (l.hasOwnProperty(n)) {
								m.push('"' + n + '":' + g.asString(l[n]))
							}
						}
						return "{" + m.join(",") + "}"
					}
					return String(l).replace(/\s/g, " ").replace(/\'/g, '"')
				},
				getHTML : function(o, l) {
					o = i( {}, o);
					var n = '<object width="' + o.width + '" height="'
							+ o.height + '" id="' + o.id + '" name="' + o.id
							+ '"';
					if (o.cachebusting) {
						o.src += ((o.src.indexOf("?") != -1 ? "&" : "?") + Math
								.random())
					}
					if (o.w3c || !h) {
						n += ' data="' + o.src + '" type="application/x-shockwave-flash"'
					} else {
						n += ' classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"'
					}
					n += ">";
					if (o.w3c || h) {
						n += '<param name="movie" value="' + o.src + '" />'
					}
					o.width = o.height = o.id = o.w3c = o.src = null;
					o.onFail = o.version = o.expressInstall = null;
					for ( var m in o) {
						if (o[m]) {
							n += '<param name="' + m + '" value="' + o[m]
									+ '" />'
						}
					}
					var p = "";
					if (l) {
						for ( var f in l) {
							if (l[f]) {
								var q = l[f];
								p += f
										+ "="
										+ (/function|object/.test(typeof q) ? g
												.asString(q) : q) + "&"
							}
						}
						p = p.slice(0, -1);
						n += '<param name="flashvars" value=\'' + p + "' />"
						
					}
					n += '<param value="opaque" name="wmode">'
					n += "</object>";
					return n
				},
				isSupported : function(f) {
					return k[0] > f[0] || k[0] == f[0] && k[1] >= f[1]
				}
			});
	var k = g.getVersion();
	function d(f, n, m) {
		if (g.isSupported(n.version)) {
			f.innerHTML = g.getHTML(n, m)
		} else {
			if (n.expressInstall && g.isSupported( [ 6, 65 ])) {
				f.innerHTML = g.getHTML(i(n, {
					src : n.expressInstall
				}), {
					MMredirectURL : location.href,
					MMplayerType : "PlugIn",
					MMdoctitle : document.title
				})
			} else {
				if (!f.innerHTML.replace(/\s/g, "")) {
					f.innerHTML = "<h2>Flash version "
							+ n.version
							+ " or greater is required</h2><h3>"
							+ (k[0] > 0 ? "Your version is " + k
									: "You have no flash plugin installed")
							+ "</h3>"
							+ (f.tagName == "A" ? "<p>Click here to download latest version</p>"
									: "<p>Download latest version from <a href='"
											+ j + "'>here</a></p>");
					if (f.tagName == "A") {
						f.onclick = function() {
							location.href = j
						}
					}
				}
				if (n.onFail) {
					var l = n.onFail.call(this);
					if (typeof l == "string") {
						f.innerHTML = l
					}
				}
			}
		}
		if (h) {
			window[n.id] = document.getElementById(n.id)
		}
		i(this, {
			getRoot : function() {
				return f
			},
			getOptions : function() {
				return n
			},
			getConf : function() {
				return m
			},
			getApi : function() {
				return f.firstChild
			}
		})
	}
	if (c) {
		jQuery.tools = jQuery.tools || {
			version : "3.2.0"
		};
		jQuery.tools.flashembed = {
			conf : b
		};
		jQuery.fn.flashembed = function(l, f) {
			return this.each(function() {
				$(this).data("flashembed", flashembed(this, l, f))
			})
		}
	}
})();